The recent proliferation of electronic text and multimedia databases has placed at society's fingertips a wealth of information and knowledge. Typically, a computer is employed that locates and retrieves information from the database in response to a user's input. The requested information is then displayed on the computer's monitor. Modern database systems permit efficient, comprehensive, and convenient access to an infinite variety of documents, publications, periodicals, and newspapers.
Databases come in various forms. Database systems based on remotely-located, multiple-user databases, such as Westlaw, LEXIS/NEXIS, and Dialog, are well known. These systems employ a central computer that services requests and queries from multiple, remotely-located researchers. More recently, local, single-user databases such as those on CD-ROM have become quite popular. In all cases, databases contain far too much information to be stored in a computer's local random access memory. For this reason, the information must be stored in a database external to memory, and the database is accessed only as needed.
Information in the database is normally accessed through a user-generated Boolean query. As is well known in the art, a query comprises one or more search terms and connectors that define the relationship between multiple search terms. For example, a boolean query can be formulated that will find only those documents where the words "Hadley" and "Baxendale" occur in the same sentence. Another query might require that "Hadley" and "Baxendale" be found within a given number of words of each other. Other queries might restrict the search so as to require that all the search documents be published in a certain year, or range of years.
Another querying technique employs the use of a "natural language" processor. The natural language processor interprets a user-formulated query consisting of a list search terms, and then finds the most relevant documents based on a statistical analysis of the uniqueness of the search terms. "Uniqueness" is usually defined by the contents of the database.
Whatever querying technique is used, a search engine uses the query define a class of documents within the database, and locates each of the documents within the class. The user then browses the search results by "paging through" one or more of the search documents.
Although databases are capable of accommodating huge amounts of information, retrieving information from databases is much slower than retrieving information from local random access memory. In multiple-user, remotely-located databases, for example, the user typically retrieves search documents over an ordinary telephone line, which is a very narrow bottleneck. In single-user, local systems, retrieval of search documents requires that the documents be read from a relatively slow local mass storage device (e.g., a CD-ROM drive).
Consequently, today's database systems are plagued by the problem of slow document retrieval. After a query is processed and search documents are identified, the user begins browsing the search results by studying the first view (or screen of information) from one of the search documents. The user then either "pages-down" to the next view within the same document, or moves to another search document. Each of these moves requires that new information be retrieved from the database before it can be displayed on the screen. Since the retrieval time is substantial, as described above, the database system is slow in responding to the user's request for the information.
The result is that while today's electronic database systems are able to efficiently locate within a vast database those search documents that satisfy a query, browsing the search documents is inefficient, slow, and tedious. There exists a compelling need, therefore, for a database system that has a quicker response time so that the database system displays information very soon after the user requests it. Such a system will significantly improve the useability and efficiency of modern database systems.